<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">
<html lang="en">
    <head>
        <title>Hyphenator.js &ndash; Test 124</title>
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <style type="text/css">
            body {
                width:50%;
                margin-left:25%;
                margin-right:25%;
            }
            div {
                line-height: 100px;
                border: 10px solid red;
                padding: 100px;
                font-size: 100px;
                word-wrap: break-word;
                -webkit-hyphens: none;
            }
            #test1, #test2 {
                background-color: #ffd6d6;
            }
            #ref1, #ref2a, #ref2b {
                background-color: #d6ffd6;
            }
            .hyphenate {
                hyphens: auto;
                -ms-hyphens: auto;
                -moz-hyphens: auto;
                -webkit-hyphens: auto;
            }
        </style>
        <script src="../Hyphenator_Loader.js" type="text/javascript"></script>
        <script type="text/javascript">
                Hyphenator_Loader.init(
                    {'en':'Hyphenation'},
                    '../Hyphenator.js',
                    {
                        'useCSS3hyphenation': true,
                        'hyphenchar': '|',
                        'safecopy': false,
                        'onhyphenationdonecallback': function () {
                            var t1 = document.getElementById('test1').innerHTML,
                            t2 = document.getElementById('ref1').innerHTML,
                            t3 = document.getElementById('test2').innerHTML,
                            t4 = document.getElementById('ref2a').innerHTML,
                            desc = document.getElementById('desc').firstChild.data,
                            msg = {
                                desc: desc,
                                index: 124
                            };
                            if (t1 == t2 && t3 == t4) {
                                msg.result = 'passed';
                            } else {
                                msg.result = 'failed';
                            }
                            //parent.postMessage(JSON.stringify(msg), window.location.href);
                        }
                    }
                );
                window.onload = function() {
                    window.setTimeout(function() {
                        var container = document.getElementById("test2"),
                            ref2 = document.getElementById('ref2b').innerHTML,
                            desc = document.getElementById('desc').firstChild.data,
                            msg = {
                                desc: desc,
                                index: 124,
                                result: "failed"
                            };
                        container.innerHTML = "To allow more efficient usage of paper, more regular appearance of right-side margins without requiring spacing adjustments, and to eliminate the need to erase hand-written long words begun near the end of a line that do not fit, words may be divided at the nearest breakpoint between syllables and a hyphen inserted to indicate that the letters form a word fragment, not a word.";
                        if (!!window.Hyphenator) {
                            Hyphenator.hyphenate(container, "en");
                            if (container.innerHTML == ref2) {
                                msg.result = "passed";
                            }
                        } else {
                            msg.result = "visual";
                        }
                        parent.postMessage(JSON.stringify(msg), window.location.href);
                    }, 1000);
                };
        </script>
    </head>
    <body>
        <p><a href="index.html">&lt;&lt;- index</a> | <a href="test123.html">&lt;- Prev</a> | <a href="test125.html">Next -&gt;</a></p>
        <h1>Test 124</h1>
        <p id="desc">Use Loader to load Hyphenator, change content after 1s, hyphenate new content.</p>

        <h2>Test1</h2>
        <p id="test1" class="hyphenate" lang="en">A hyphenation algorithm is a set of rules that decides at which points a word can be broken over two lines with a hyphen.</p>
        <h2>Ref1</h2>
        <p id="ref1" lang="en">A hy|phen|ation al|go|rithm is a set of rules that de|cides at which points a word can be bro|ken over two lines with a hy|phen.</p>

        <h2>Test2</h2>
        <p id="test2" class="hyphenate" lang="en">A hyphenation algorithm is a set of rules that decides at which points a word can be broken over two lines with a hyphen.</p>
        <h2>Ref2</h2>
        <p id="ref2a" lang="en">A hy|phen|ation al|go|rithm is a set of rules that de|cides at which points a word can be bro|ken over two lines with a hy|phen.</p>
        <p id="ref2b" lang="en">To allow more ef|fi|cient usage of paper, more reg|u|lar ap|pear|ance of right-side mar|gins with|out re|quir|ing spac|ing ad|just|ments, and to elim|i|nate the need to erase hand-writ|ten long words begun near the end of a line that do not fit, words may be di|vided at the near|est break|point be|tween syl|la|bles and a hy|phen in|serted to in|di|cate that the let|ters form a word frag|ment, not a word.</p>
    </body>
</html>